A Sensing Array (SA) is an array of sensing elements at or near the surface of transducing elements. One type of sensing array is a focal plane array (FPA), which has sensing elements arranged at the focal plane of a lens or a mirror. Sensing arrays can be used in imaging, as with light sensors in visible, infra-red and ultra-violet imaging, in electrochemical sensing arrays, or other electromagnetic sensing arrays such as magnetic field sensing or terahertz imaging. Properly biased sensors each typically convert the sensing quantity into a voltage, current, charge or resistance related to the physical quantity incident on the sensor. Charge coupled devices (CCD) are often used for visible imagers. Infrared (IR) imaging often makes use of infrared sensors and a separate chip called a readout integrated circuit (ROIC), which are bonded together in an assembly as a focal plane array. Sensing arrays such as focal plane arrays or readout integrated circuits may have sensors integrated with circuitry in a system-on-chip. A Computational Sensing Array (CSA) is an array of computational structures at, near or including a sensing array (SA).
Responses of individual elements in the array can exhibit variability as a result of differences in the sensors in a specific array. Variability includes, but is not limited to sensors having different zero-signal levels and/or different gains. Variability that is time-varying manifests itself as temporal or spatial noise. Stationary spatial variability/noise is often called non-uniformity. This can be corrected across the array of pixels by applying a variability correction. Time-dependent variability can also be introduced in the process of quantizing the continuous time, continuous value signal to yield a continuous or discrete time discrete value signal. Generally, a correction process is applied using a processor and software, for example a digital signal processor (DSP), as a postprocessing operation after the individual sensing elements have been read out to a memory external to the sensing array. Applying variability correction, for example non-uniformity correction (NUC), as a postprocessing operation using a processor and software is common practice in sensor arrays, including imaging arrays that are scanned such as CMOS or CCD imagers. Doing the latter is energy inefficient and resources inefficient and cannot always be performed, especially in event-based sensor arrays where response is necessary at time scales beyond those involved with software-based NUC correction. There is a need in the art for a solution which overcomes the drawbacks described above.